testing software
Testing software for non-discrimination: an updated and extended audit in the Italian car insurance domain
Rondina, Marco, Vetrò, Antonio, Coppola, Riccardo, Regragrui, Oumaima, Fabris, Alessandro, Silvello, Gianmaria, Susto, Gian Antonio, De Martin, Juan Carlos
Context. As software systems become more integrated into society's infrastructure, the responsibility of software professionals to ensure compliance with various non-functional requirements increases. These requirements include security, safety, privacy, and, increasingly, non-discrimination. Motivation. Fairness in pricing algorithms grants equitable access to basic services without discriminating on the basis of protected attributes. Method. We replicate a previous empirical study that used black box testing to audit pricing algorithms used by Italian car insurance companies, accessible through a popular online system. With respect to the previous study, we enlarged the number of tests and the number of demographic variables under analysis. Results. Our work confirms and extends previous findings, highlighting the problematic permanence of discrimination across time: demographic variables significantly impact pricing to this day, with birthplace remaining the main discriminatory factor against individuals not born in Italian cities. We also found that driver profiles can determine the number of quotes available to the user, denying equal opportunities to all. Conclusion. The study underscores the importance of testing for non-discrimination in software systems that affect people's everyday lives. Performing algorithmic audits over time makes it possible to evaluate the evolution of such algorithms. It also demonstrates the role that empirical software engineering can play in making software systems more accountable.
QA Increasingly Benefits from AI and Machine Learning - RTInsights
While the human element will still exist, incorporating AI/ML will improve the QA testing within an organization. The needle in quality assurance (QA) testing is moving in the direction of increased use of artificial intelligence (AI) and machine learning (ML). However, the integration of AI/ML in the testing process is not across the board. The adoption of advanced technologies still tends to be skewed towards large companies. Some companies have held back, waiting to see if AI met the initial hype as being a disruptor in various industries.
Activeeon receives the Innovation award at OW2con 2019
At OW2con'19, June 12-13 in Paris Châtillon, open source projects ProActive (Activeeon solution), XWiki and CLIF receive unique recognition from the community for their contributions to the OW2 code base. OW2, the international community dedicated to develop and to promote an open source code base, announces the winners of OW2con'19 Best Project Awards. The OW2con Best Project Awards recognize OW2 projects for their outstanding contribution in several categories including community, innovation, and market performance. ProActive wins the OW2con'19 Best Project Innovation Award, with its comprehensive Artificial Intelligence and Machine Learning platform. Machine Learning Open Studio (MLOS) is a set of workflows and pipelines based on ProActive core technology that accelerates the development and the deployment of complex AI models and reduces the operational costs.
Life or death testing: when testing gets critical
New apps and versions of software are frequently released, with some even released continuously. In the on-demand world we live in, consumers want new capabilities and functionalities yesterday, all with seamless user experience. Keeping up with this demand can be challenging. And, to ensure that these releases can happen quickly, most software testing covers much fewer than 1% of the user journeys through the software. However, when it comes to critical pieces of technology–from surgical machines to autonomous vehicles–lives are at risk.
Testing Software with Artificial Intelligence
Driving Assistance: the AI can see the page, and help you write your assertions. You still write the code that "drives" the application, but the AI can check the page and ensure that the expected values in it are the correct ones. Partial Automation: just looking at the differences between the actual page and the expected (baseline) one is nice, but a higher level of understanding is what a level 2 AI will need here. For example, if all the pages include the same change, the AI will understand that it is the same page and show it to the human as one change. Moreover, an AI will look at the layout of the page and the content of the page, and categorize each change as a content change or a layout change.